#ifndef MINEDESIGN3D_ARCHIVEMANAGER
#define MINEDESIGN3D_ARCHIVEMANAGER
#include "Util/Singleton.hpp"
#include "Archive/Archive.hpp"
namespace MineDesign3D{
class ArchiveManager : public Util::Singleton<ArchiveManager>
{
public:
	ArchiveManager()
	{
		loader = Archive::ILoader::createArchiveOnlyLoader("Archive.bin");
	}
	~ArchiveManager(){}

	Archive::IFile::ptr load(const char* filename)
	{
		return loader->load(filename);
	}
private:
	Archive::ILoader::ptr loader;
};
}//MineDesign3D

inline MineDesign3D::ArchiveManager* g_pArchiveManager()
{
	return MineDesign3D::ArchiveManager::pInstance();
}
#endif